In non-volatile memory systems, such as flash EEPROM devices, the accurate storage of data is dependent upon the data being both written and read back with accuracy. The accurate programming of data relies upon the individual memory cells being written into well-defined distributions of threshold voltage values for each of the data states that the memory cells may store. This is particularly true of multistate devices, with the situation becoming ever more critical as device sizes shrink and the voltage window allotted for an increasing number of states becomes smaller. Consequently there is an ongoing need to improve techniques for providing a tighter distribution of states during write operations.